In a routing network, a fault in the network may cause a communication path between a source routing node and a destination routing node to be blocked, resulting in termination of data transmission. In this case, in some approaches, a fault-tolerant routing technology is generally used, in which a network fault is tolerated by bypassing a fault point and a reliable communication service is provided for a user.
After a fault occurs in a transmission path between a source node (S) and a destination node (D) in a routing network, a management node finds an intermediate routing node (I) for an affected node pair (S, D). The I needs to meet two conditions: (1) There is no fault in a path from S to I, (2) There is no fault in a path from I to D. After I is found, a message originally sent from S to D is first sent from S to I (a routing phase 1) and then forwarded from I to D (a routing phase 2).
In an existing routing network, for ensuring that no routing deadlock occurs, after an I is added, a message routed from S to D experiences two phases: from S to I and from I to D. In some approaches, to ensure that no routing deadlock occurs after a message passes the I, the message is switched to a new virtual channel when passing the I and a serial number of the virtual channel needs to be monotonic. For example, a first virtual channel is used in a routing phase 1 and a second virtual channel is used in a routing phase 2.
In the prior art, a routing deadlock is prevented using a virtual channel method, which has a relatively high resource requirement. For example, n+1 virtual channels need to be used when n intermediate routing nodes are required for use. These virtual channels are not in use if there is no fault, and therefore, resources are severely wasted and network resource utilization is low. In addition, in most cases, a fault area can be bypassed with only a small quantity of intermediate routing nodes. However, the system must reserve resources according to a worst case, resulting in severely unbalanced resource utilization and leading to poor system performance.